home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-01 / mc220.zip / READ.ME < prev    next >
Text File  |  1992-02-24  |  10KB  |  185 lines

  1.                             * The MICRO-C Compiler *
  2.     
  3.        MICRO-C is a tiny compiler for the 'C' language. It has been designed
  4.     to be VERY portable, and can be moved between different  processors  and
  5.     operating systems with little difficulty.
  6.     
  7.        MICRO-C should not be compared to MICROSOFT, TURBO,  or  any  of  the
  8.     other P.C. compilers, because it it intended for en  entirely  different
  9.     purpose. These are very good compilers, but they are  large,  expensive,
  10.     and dedicated to specific computer environments. MICRO-C is tiny (it can
  11.     be made to run in less that 32K), and allows you to take it anywhere you
  12.     want.
  13.     
  14.        The complete MICRO-C package includes all  source  code  and  support
  15.     files you need to port the compiler to any environment. It also includes
  16.     code generators for the 6809, 68HC11, 8051/31, 8080/8085/Z80, 80x86  and
  17.     8096 processors. With  this  package  you  can  turn  out  an  "instant"
  18.     compiler  for  any  machine  using  one   of   those   processors.   The
  19.     documentation also contains detailed information  on  writing  new  code
  20.     generators for other processors.
  21.     
  22.        MICRO-C is also  an  excellent  learning  tool.  Not  only  does  the
  23.     complete, well documented source code for  the  compiler  and  utilities
  24.     give you the opportunity to explore and understand those  programs,  the
  25.     source code for the library gives you information on all kinds of system
  26.     programming, such as:
  27.     
  28.                 - DOS and BIOS services
  29.                 - Video screen and windowing functions
  30.                 - Interrupt driven serial communications
  31.                 - Terminate and Stay Resident (TSR)
  32.                 - Lots MORE (Over 130 functions)
  33.     
  34.        For more information on the compiler, see the file MC.DOC. This  file
  35.     is quite large, make sure you are in no hurry before printing  it  on  a
  36.     slow printer. The table of contents pages are printed last,  and  should
  37.     be inserted between the title page and page 1.
  38.     
  39.        MICRO-C is no longer  "User  supported  Software"  (shareware).  This
  40.     archive contains a "DEMO" package, consisting of the IBM PC  executables
  41.     and support files. If you like what you see,  and  wish  to  obtain  the
  42.     complete package with  source  code  for  the  compiler,  libraries  and
  43.     utilities, Fill out the order form in the  enclosed  CATALOG  file,  and
  44.     send it along with the required payment to:
  45.     
  46.                         Dunfield Development Systems
  47.                         P.O. Box 31044
  48.                         Nepean, Ontario (Canada)
  49.                         K2B 8S8
  50.     
  51.        If you choose not to  order  the  complete  MICRO-C  package,  please
  52.     discontinue using MICRO-C within thirty days.
  53.     
  54.                               * Getting Started *
  55.     
  56.        To install MICRO-C on a hard drive, simply  create  a  directory  and
  57.     unpack this archive into it. The directory  "\MC"  is  preferred,  since
  58.     some of the utilities assume this is the MICRO-C home  directory  unless
  59.     told otherwise.
  60.     
  61.        Once you have installed the system, refer  to  the  section  entitled
  62.     "THE COMMAND CO-ORDINATOR" in the MC.DOC file for information on how  to
  63.     compile programs using the 'CC' command. You should either  include  the
  64.     MICRO-C directory "\MC" in your PATH, or  copy  the  CC.COM  file  to  a
  65.     directory which is already in your PATH. Also, make sure that  the  MASM
  66.     and LINK commands are available on your  system.  The  MCDIR  and  MCTMP
  67.     environment variables should be set up  as  described  in  the  document
  68.     before attempting to use CC.
  69.     
  70.        Once you have everything set up, you may wish to try  compiling  some
  71.     of the example programs which are included in this archive.
  72.     
  73.                             * MICRO-C under MS-DOS *
  74.                             * Implementation notes *
  75.     
  76.        The 8086 MS-DOS implementation of the compiler produces code for  the
  77.     Microsoft MASM (or compatible) assembler in either  the  TINY  or  SMALL
  78.     models. The LINK utility is required to create an EXE  file.  NOTE  that
  79.     programs produced for the TINY  model  will  execute  as  ".EXE"  files,
  80.     however, due to PSP being outside of the data/code segment, command line
  81.     parameters are only available when the program is  converted  to  ".COM"
  82.     format with the supplied EXE2BIN utility.
  83.     
  84.        The memory model to use is selected by  the  runtime  library,  which
  85.     MUST BE FIRST in the list of object files  passed  to  the  linker.  The
  86.     PC86RL_T.OBJ file distributed with MICRO-C is configured  for  the  TINY
  87.     model, and the PC86RL_S.OBJ file is configured for the SMALL model.
  88.     
  89.        The variables ARGC and ARGV (Note  capitals)  are  available  in  the
  90.     runtime  library  module  for  use  as  EXTERNAL  references  from  your
  91.     programs. This makes it easy for  a  function  other  than  'main()'  to
  92.     access the programs arguments.  The  variables  PSP  and  ENV  are  also
  93.     available to  determine  the  PROGRAM  SEGMENT  PREFIX  and  ENVIRONMENT
  94.     segments.
  95.     
  96.             ie:     extern int ARGC;        /* Count of arguments */
  97.                     extern char *ARGV[];    /* Array of ptrs to args */
  98.                     extern int PSP;         /* PSP segment */
  99.                     extern int ENV;         /* Environment segment */
  100.     
  101.        If you are using a DOS version prior to  3.0,  the  argv[0]  (program
  102.     name) argument will not work correctly.
  103.     
  104.        MICRO-C has been tested with these PC assemblers:
  105.     
  106.             MASM 3.0    - Works OK
  107.             MASM 4.0    - Works OK
  108.             MASM 5.1    - Works OK
  109.             TASM 1.0    - Works OK
  110.             TASM 2.01   - DOES NOT WORK (cannot call EXTRN symbols)
  111.             A86 3.21    - DOES NOT WORK (not fully MASM compatible)
  112.     
  113.                            * Files in this archive *
  114.     
  115.             READ.ME         - This file
  116.             CATALOG         - Catalog of available software
  117.             FEATURES.DOC    - A summary of MICRO-C features
  118.             MC.DOC          - MICRO-C Technical Documentation
  119.             LIBRARY.DOC     - MICRO-C Library Reference
  120.             MC-VS-SC.DOC    - Comparison of MICRO-C and SMALL-C
  121.             CINTRO.DOC      - Introduction to 'C'
  122.             CC.COM          - Command Co-ordinator
  123.             MCP.COM         - Preprocessor
  124.             MCC86.COM       - 80x86 Compiler
  125.             MCO86.COM       - 80x86 Optimizer
  126.             EXE2BIN.COM     - Executable to Binary convertor
  127.             WINDEMO.COM     - Window package demonstration
  128.             LC86.BAT        - Batch file to link multiple objects
  129.             PC86RL_T.OBJ    - Tiny model runtime library
  130.             PC86RL_S.OBJ    - Small model runtime library
  131.             MCLIB.LIB       - MICRO-C Function Library
  132.             *.h             - Header files as described in the documentation
  133.             *.c             - Various example programs
  134.     
  135.        All of the source and header files  ('.c',  and  '.h')  were  written
  136.     using tab stops every 4 characters, which is much  more  convenient  for
  137.     'C' development than the usual MS-DOS tab stops of every  8  characters.
  138.     Source for a program called "type4.c" is provided, which  reads  a  file
  139.     and displays it using  spaces  to  simulate  the  tabs  at  4  character
  140.     intervals. To compile this program, use:
  141.     
  142.                                     cc type4
  143.     
  144.        The resulting "type4.com" file may be used to view/print  the  source
  145.     files with proper spacing.
  146.     
  147.                             ************************
  148.                             *** Ordering MICRO-C ***
  149.                             ************************
  150.     
  151.        MICRO-C IS NOT FREE SOFTWARE,  if  you  like  MICRO-C,  and  wish  to
  152.     continue using it, you MUST order a complete copy of the  program,  this
  153.     gets you many things not included in the demo archive, including:
  154.     
  155.             - More utilities, such as MAKE, TOUCH, SLINK, SLIB, SINDEX.
  156.     
  157.             - Complete source code for compiler, libraries and utilities.
  158.     
  159.             - Code generators for 6809, 68HC11, 8051/31, 8080/85/Z80, 8086
  160.               and 8096 (all with source code).
  161.     
  162.             - An nice set of windowing library functions (with source).
  163.               Run the WINDEMO.COM program for a taste.
  164.     
  165.             - Many more (and useful) example programs (with source), see
  166.               the summary at the end of the MC-VS-SC.DOC file.
  167.     
  168.                         * Limited Distribution License *
  169.     
  170.        Permission is granted to copy and distribute this "demo" archive  via
  171.     electronic "Bulletin Board Systems" (BBS), and  disk  copying  services,
  172.     subject to the following restrictions:
  173.     
  174.     - The archive must be presented in its original form, without modification.
  175.     
  176.     - Only one version of this archive may be offered at any given time, IE: if
  177.       you post a new version of one of my shareware products, any older versions
  178.       of that product, which were previously available must be removed and no
  179.       longer offered for distribution.
  180.     
  181.     - I reserve the right to request of anyone distributing this archive that
  182.       they upgrade to the current release (which I will provide). If you receive
  183.       such notification, and desire NOT to upgrade, you may also meet the
  184.       requirements of this license by ceasing to distribute this archive.
  185.